﻿/* 
 * Evo
 * 
 * Marcin Krupowicz (marcin@krupowicz.eu)
 * Barbara Szymanek (basia.szymanek@gmail.com)
 * 
 * January, 2009
 *
 */

using System;
using System.Collections.Generic;
using System.Text;

namespace Evo
{
	/// <summary>
	/// Type of scaling
	/// </summary>
	public enum ScalingType
	{
		None,
		SimpleScaling,
		SigmaScaling,
		PowerScaling,
		ExponentialScaling
	}

	//TODO:
	/// <summary>
	/// Define static methods for scaling fitness values of individuals in population
	/// </summary>
	/// <typeparam name="T">Type of individuals</typeparam>
	public class Scaling<T> where T : IIndividual
	{
		public static void SimpleScaling(Population<T> population)
		{
			foreach (IIndividual individual in population.Individuals)
			{
			}
		}

		public static void SigmaScaling(Population<T> population)
		{
		}

		public static void PowerScaling(Population<T> population)
		{
		}

		public static void ExponentialScaling(Population<T> population)
		{
		}
	}
}
